package com.rla.domain.vo;

import java.math.BigDecimal;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.rla.common.annotation.ExcelDictFormat;
import com.rla.common.convert.ExcelDictConvert;
import lombok.Data;


/**
 * 药品-规格对照视图对象 base_drug_speci
 *
 * @author rla
 * @date 2025-08-04
 */
@Data
@ExcelIgnoreUnannotated
public class BaseDrugSpeciVo {

    private static final long serialVersionUID = 1L;

    /**
     * 药品编码
     */
    @ExcelProperty(value = "药品编码")
    private String drugCode;

    /**
     * 规格编码
     */
    @ExcelProperty(value = "规格编码")
    private String skuCode;

    /**
     * 规格名称（小程序展示用）
     */
    @ExcelProperty(value = "规格名称", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "小=程序展示用")
    private String speciName;

    /**
     * erp商品名称
     */
    @ExcelProperty(value = "erp商品名称")
    private String erpProductName;

    /**
     * erp规格名称
     */
    @ExcelProperty(value = "erp规格名称")
    private String erpSpeciName;

    /**
     * erp规格编号
     */
    @ExcelProperty(value = "erp规格编号")
    private String erpSpeciCode;

    /**
     * erp库存数量（暂存）
     */
    @ExcelProperty(value = "erp库存数量", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "暂=存")
    private Long erpStockNum;

    /**
     * 销售价（套餐包商品价值）
     */
    @ExcelProperty(value = "销售价", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "套=餐包商品价值")
    private BigDecimal salesPrice;

    /**
     * 原价（划线价）
     */
    @ExcelProperty(value = "原价", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "划=线价")
    private BigDecimal dashingPrice;

    /**
     * 成本价（rep售价）
     */
    @ExcelProperty(value = "成本价", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "r=ep售价")
    private BigDecimal costPrice;

    /**
     * 规格图片
     */
    @ExcelProperty(value = "规格图片")
    private String picUrl;

    /**
     * 兑换积分
     */
    @ExcelProperty(value = "兑换积分")
    private BigDecimal exchangePoints;

    /**
     * 是否可用积分兑换（0、否，1、是）
     */
    @ExcelProperty(value = "是否可用积分兑换", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "0=、否，1、是")
    private String isExchange;

    /**
     * 套餐包参与数量
     */
    @ExcelProperty(value = "套餐包参与数量")
    private Long participationNum;

    /**
     * 排序
     */
    @ExcelProperty(value = "排序")
    private Long sort;

    private String erpSpeciCodeTc;
}
